package com.community.demo.beans.seguridad;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;

import com.community.demo.beans.GenericBean;
import com.community.demo.model.security.Usuario;

@ManagedBean
@RequestScoped
public class LoginBean extends GenericBean {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	//Vistas manejadas desde el login
	private String HOME_APP = "/jsf/inicio/dashboard.jsf?faces-redirect=true";
	
	private Usuario usuario;
	
	public LoginBean(){
		this.usuario = new Usuario();
	}
	
	public Usuario getUsuario() {
		return usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}
	
	/**
	 * Permite autenticar a un usuario al sistema
	 * 
	 * @return
	 */
	public String autenticarUsuario(){
		if(usuario.getLogin().equals("admin") && usuario.getPassword().equals("admin1234")){
			return HOME_APP;
		} else {
			//Se asigna el mensaje de error cuando el usuario no se pudo loguear
			FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_ERROR, "El usuario y/o la clave son incorrectos. Intentelo nuevamente.", null);
			getFacesContext().addMessage(null, facesMessage);
		}
		
		return HOME_APP;
	}
}